package com.car.loan.project.xr.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.car.loan.project.xr.util.bo.business.modify.ModifyIgnore;
import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.experimental.Accessors;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import lombok.Data;
import io.swagger.annotations.ApiModelProperty;
import com.baomidou.mybatisplus.annotation.TableName;



/**
 * 担保人对象 xr_customer_guarantor
 * 
 * @author ruoyi
 * @date 2019-11-03
 */
@TableName("xr_customer_guarantor")
@Data
@Accessors(chain = true)
public class CustomerGuarantor{
    private static final long serialVersionUID = 1L;

    @TableId(type = IdType.AUTO)
    private Long id;

    private Long loanId;

    @ModifyIgnore
    public Long getId() {
        return id;
    }

    @ModifyIgnore
    public Long getLoanId() {
        return loanId;
    }

    /** 姓名 */
    @ApiModelProperty("姓名")
    private String name;

    /** 手机号码 */
    @ApiModelProperty("手机号码")
    private String mobile;

    /** 关系  父母/子女/兄弟/姐妹/亲戚/朋友 */
    @ApiModelProperty("关系")
    private String relationship;

    /** 0=身份证 1=户口簿 2=护照 3=军官证 4=士兵证 5=港澳居民来往内地通行证 6=台湾同胞来往内地通行证 7=临时身份证 8=外国人居留证 9=警官证 A=香港身份证 B=澳门身份证 C=台湾身份证 X=其他证件 */
    @ApiModelProperty("0=身份证")
    private Integer idType;

    /** 证件号码 */
    @ApiModelProperty("证件号码")
    private String idCardNo;

    /** 是否担保  0=不担保  5=公司担保  10=银行担保 */
    @ApiModelProperty("担保方式0=不担保、5=公司担保、10=银行担保")
    private Integer guaranteeType;


    @ModifyIgnore
    public Integer getGuaranteeType() {
        return guaranteeType;
    }


    @TableField(exist = false)
    @ApiModelProperty("担保方式")
    @JsonIgnore
    private String guaranteeStr;

    public String getGuaranteeStr() {
        if (null != guaranteeType) {
            if (guaranteeType == 0) {
                return "不担保";
            } else if (guaranteeType == 5) {
                return "公司担保";
            } else if (guaranteeType == 10) {
                return "银行担保";
            }
        }
        return guaranteeStr;
    }


    /** 居住省 */
    @ApiModelProperty("居住省")
    private String province;

    /** 居住市 */
    @ApiModelProperty("居住市")
    private String city;

    /** 居住区 */
    @ApiModelProperty("居住区")
    private String area;

    /** 居住地址 */
    @ApiModelProperty("居住地址")
    private String address;

    /** 工作单位 */
    @ApiModelProperty("工作单位")
    private String workUnit;




}
